package com.wwh.furns.service;

import com.wwh.furns.entity.Furn;
import com.wwh.furns.entity.Page;

import java.util.List;

/**
 * @author Albert
 * @date 2024/5/28-15:57
 * @describe
 */
public interface FurnService {
    /**
     * 查询所有的家居信息
     * @return 所有家居信息集合
     */
    public List<Furn> queryFurns();

    /**
     * 添加一个家居
     * @param furn
     * @return 若添加成功，返回true；若添加失败，返回false
     */
    boolean addFurn(Furn furn);

    /**
     * 删除一个家具信息
     * @param id 需要删除的家具ID
     * @return 成功返回true，失败返回false
     */
    boolean deleteFurnById(int id);

    /**
     * 根据id查询一个家具
     * @param id 需要查询的家具id
     * @return 返回所查询的家具
     */
    Furn queryFurnById(int id);

    /**
     * 根据传入的Furn更新数据库中的Furn
     * @param furn
     * @return 影响的行数，如果为1，则修改成功，如果为0，则修改失败
     */
    int updateFurn(Furn furn);

    /**
     * 根据传入的begin和pageSize，返回对应的page对象
     * @param pageNo
     * @param pageSize
     * @return
     */
    public Page<Furn> page(int pageNo, int pageSize);

    /**
     * 根据传入的begin和pageSize和name，返回对应的page对象
     * @param pageNo 当前页
     * @param pageSize 页面大小
     * @param name 家具名字
     * @return
     */
    public Page<Furn> pageByName(int pageNo, int pageSize, String name);
}
